package com.qf.service;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    @DS("order-1") // 编译期就已经设置好的
    public void add1(int tab) {
        // #{id}:被解析占位符了
        // ${id}:拼接到SQL语句中的

        //  计算用户应该插入到那个数据库
        Integer idnex = 1234 / 2;
        String dbIndex = "order-" + idnex;

        // 程序运行的时候动态设置，设置数据源 @Ds("order-2")

        jdbcTemplate.update("delete from t_user_" + tab + " where id = ?", 10);
    }

//    @DS("order-2")
    public void add2() {

        // 计算的
        DynamicDataSourceContextHolder.push("order-2");
        jdbcTemplate.update("delete from t_user where id = ?", 10);
    }

    // 不设置走默认的
    public void add3() {
        jdbcTemplate.update("delete from t_user where id = ?", 10);
    }
}
